package id.net.iconpln.bb.client.view;

import id.net.iconpln.bb.client.data.TestData;
import id.net.iconpln.bb.client.tools.BulanSelector;
import id.net.iconpln.bb.client.tools.TahunSelector;

//import com.extjs.gxt.charts.client.Chart;
import com.extjs.gxt.charts.client.event.ChartListener;
import com.extjs.gxt.charts.client.model.ChartModel;
import com.extjs.gxt.charts.client.model.ToolTip;
import com.extjs.gxt.charts.client.model.ToolTip.MouseStyle;
import com.extjs.gxt.charts.client.model.axis.Label;
import com.extjs.gxt.charts.client.model.axis.RadarAxis;
import com.extjs.gxt.charts.client.model.axis.XAxis;
import com.extjs.gxt.charts.client.model.axis.YAxis;
import com.extjs.gxt.charts.client.model.charts.AreaChart;
import com.extjs.gxt.charts.client.model.charts.BarChart;
import com.extjs.gxt.charts.client.model.charts.CylinderBarChart;
import com.extjs.gxt.charts.client.model.charts.FilledBarChart;
import com.extjs.gxt.charts.client.model.charts.HorizontalBarChart;
import com.extjs.gxt.charts.client.model.charts.PieChart;
import com.extjs.gxt.charts.client.model.charts.SketchBarChart;
import com.extjs.gxt.charts.client.model.charts.BarChart.BarStyle;
import com.extjs.gxt.ui.client.Style.LayoutRegion;
import com.extjs.gxt.ui.client.Style.Scroll;
import com.extjs.gxt.ui.client.event.ButtonEvent;
import com.extjs.gxt.ui.client.event.Events;
import com.extjs.gxt.ui.client.event.Listener;
import com.extjs.gxt.ui.client.event.SelectionChangedEvent;
import com.extjs.gxt.ui.client.event.SelectionListener;
import com.extjs.gxt.ui.client.event.SliderEvent;
import com.extjs.gxt.ui.client.store.ListStore;
import com.extjs.gxt.ui.client.util.Format;
import com.extjs.gxt.ui.client.util.IconHelper;
import com.extjs.gxt.ui.client.util.Margins;
import com.extjs.gxt.ui.client.widget.ContentPanel;
import com.extjs.gxt.ui.client.widget.LayoutContainer;
import com.extjs.gxt.ui.client.widget.ListView;
import com.extjs.gxt.ui.client.widget.Slider;
import com.extjs.gxt.ui.client.widget.button.Button;
import com.extjs.gxt.ui.client.widget.form.FieldSet;
import com.extjs.gxt.ui.client.widget.form.SliderField;
import com.extjs.gxt.ui.client.widget.layout.BorderLayout;
import com.extjs.gxt.ui.client.widget.layout.BorderLayoutData;
import com.extjs.gxt.ui.client.widget.layout.FitData;
import com.extjs.gxt.ui.client.widget.layout.FitLayout;
import com.extjs.gxt.ui.client.widget.layout.FlowLayout;
import com.extjs.gxt.ui.client.widget.layout.FormLayout;
import com.extjs.gxt.ui.client.widget.layout.MarginData;
import com.extjs.gxt.ui.client.widget.layout.VBoxLayout;
import com.extjs.gxt.ui.client.widget.layout.VBoxLayoutData;
import com.extjs.gxt.ui.client.widget.layout.VBoxLayout.VBoxLayoutAlign;
import com.extjs.gxt.ui.client.widget.toolbar.SeparatorToolItem;
import com.extjs.gxt.ui.client.widget.toolbar.ToolBar;
import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.Command;
import com.google.gwt.user.client.Element;
import com.google.gwt.user.client.Random;
import com.google.gwt.user.client.Timer;
import com.google.gwt.user.client.rpc.AsyncCallback;
//import com.raisepartner.chartfusion.api.column3d.Column3D;
import com.raisepartner.chartfusion.api.column3d.Column3D;

public class ChartTestView extends LayoutContainer {
	  private LayoutContainer laypanel = panel1();
	  private boolean s = true;
	  @Override  
	  protected void onRender(Element parent, int index) {  
	    super.onRender(parent, index);
		setLayout(new FlowLayout());
		setScrollMode(Scroll.AUTO);

			add(m(), new FitData(5));
	  }
		private ContentPanel m(){
	
			final ContentPanel cp = new ContentPanel();
			ToolBar toolBar = new ToolBar();
			Button loadL = new Button("Load Data");
			loadL.setIcon(IconHelper.createStyle("icon-cascade"));
			loadL.addSelectionListener(new SelectionListener<ButtonEvent>() {
				public void componentSelected(ButtonEvent ce) {
//					cp.mask().show();
					if (s == true){
						cp.removeAll();
						laypanel = panel2();
						cp.add(laypanel);
						s = false;
					}else{
						cp.removeAll();
						laypanel = panel1();
						cp.add(laypanel);
						s = true;
					}
					GWT.log(""+s, null);
				}
			});

			toolBar.add(loadL);
			toolBar.add(new SeparatorToolItem());

			Button loadd = new Button("Load Data2");
			loadd.setIcon(IconHelper.createStyle("icon-cascade"));
			loadd.addSelectionListener(new SelectionListener<ButtonEvent>() {
				public void componentSelected(ButtonEvent ce) {
					s = false;
					cp.unmask();
				}
			});

			toolBar.add(loadd);
			
			cp.setLayoutOnChange(true); 
			cp.setCollapsible(false);
			cp.setFrame(false);
			cp.setHeading("");
			cp.setHeaderVisible(false);
			cp.setLayout(new FitLayout());
			cp.setBorders(false);
			cp.setTopComponent(toolBar);
		
			cp.add(laypanel);
			return cp;
		}
	private LayoutContainer panel1(){
		LayoutContainer panel = new LayoutContainer();
//	    panel.setBodyStyle("padding: 6px");
//	    panel.setFrame(true);
	    panel.setTitle("CenterLayout1");
	    panel.addText("I should be centered CenterLayout1");
	    panel.setWidth(200);
	    panel.syncSize();
	    return panel;
  }
  
  private LayoutContainer panel2(){
	  LayoutContainer panel = new LayoutContainer();
//	    panel.setBodyStyle("padding: 6px");
//	    panel.setFrame(true);
	    panel.setTitle("CenterLayout2");
	    panel.addText("I should be centered CenterLayout2");
	    panel.setWidth(100);
	    panel.syncSize();
	    return panel;
  }
  private ContentPanel panel3(){
	    ContentPanel panel = new ContentPanel();
	    panel.setBodyStyle("padding: 6px");
//	    panel.setFrame(true);
	    panel.setHeading("CenterLayout3");
	    panel.addText("I should be centered");
	    panel.setWidth(200);
	    
//	    ChartModel cm = new ChartModel();
	   
//	    FusionChartList f = new FusionChartList() {
//	    	
//	    };
//	    Chart c = new Chart("data.xml");
//	    c.setD
	    	  
	    
//	    Column3D fc = new Column3D().createSetNode(){
	    	
//	    };
	   
	    
	    
	    
	    
//	    panel.syncSize();
	    return panel;
  	  
//		  protected void onSubmit() {
//				GWT.log("load onSubmit", null);
//			    status.show();
//			    getButtonBar().disable();
//			    
//			    Timer t = new Timer() {
//			      @Override
//			      public void run() {
//			    	  validasiLogins();	        
//			      }
//
//			    };
//			    t.schedule(2000);
//			  }
//	    ContentPanel cp = new ContentPanel();  
//	    cp.setHeading("Charts Gallery");  
////	    cp.setFrame(true);  
//	    cp.setSize(700, 350);  
//	    cp.setLayout(new BorderLayout());  
//	  
//	    BorderLayoutData eastData = new BorderLayoutData(LayoutRegion.EAST, 370);  
//	  
//	    BorderLayoutData centerData = new BorderLayoutData(LayoutRegion.CENTER);  
//	    centerData.setMargins(new Margins(0, 5, 0, 0));  
//	  
//	    cp.add(getChart(), centerData);  
//	    cp.add(getDetails(), eastData);  
//	  
//	    add(cp, new MarginData(20));  
//	  
//	  }  
//	  
//	  private LayoutContainer getDetails() {  
//	    LayoutContainer lc = new LayoutContainer();  
//	    VBoxLayout vLayout = new VBoxLayout();  
//	    vLayout.setVBoxLayoutAlign(VBoxLayoutAlign.STRETCH);  
//	    lc.setLayout(vLayout);  
//	  
//	    FieldSet controls = new FieldSet();  
//	    controls.setHeading("Controls");  
//	    FormLayout fl = new FormLayout();  
//	    fl.setLabelWidth(125);  
//	    controls.setLayout(fl);  
//	  
//	    Slider segments = new Slider();  
//	    segments.setMaxValue(12);  
//	    segments.setMinValue(1);  
//	    segments.setIncrement(1);  
//	    segments.setValue(numSegments);  
//	    segments.addListener(Events.Change, new Listener<SliderEvent>() {  
//	      public void handleEvent(SliderEvent be) {  
//	        numSegments = be.getNewValue();  
//	        adjustUpdateSpeed(updateSpeed);  
//	      }  
//	    });  
//	    SliderField segFld = new SliderField(segments);  
//	    segFld.setFieldLabel("Segments (#)");  
//	    controls.add(segFld);  
//	  
//	    final Slider update = new Slider() {  
//	      @Override  
//	      protected String onFormatValue(int value) {  
//	        if (value == 0) return "Off";  
//	        return super.onFormatValue(value);  
//	      }  
//	    };  
//	    update.setMinValue(0);  
//	    update.setMaxValue(3000);  
//	    update.setIncrement(100);  
//	    update.setValue(updateSpeed);  
//	    update.setMessage("{0}ms");  
//	    update.addListener(Events.Change, new Listener<SliderEvent>() {  
//	      public void handleEvent(SliderEvent se) {  
//	        adjustUpdateSpeed(se.getNewValue());  
//	      }  
//	    });  
//	    SliderField updFld = new SliderField(update);  
//	    updFld.setFieldLabel("Update Interval (ms)");  
//	    controls.add(updFld);  
//	  
//	    lc.add(controls);  
//	  
//	    FieldSet gallery = new FieldSet();  
//	    gallery.setHeading("Gallery");  
//	    gallery.setLayout(new FitLayout());  
//	  
////	    ListStore<GalleryChartModel> store = new ListStore<GalleryChartModel>();  
////	    store.add(new GalleryChartModel("Area", "area.gif", new AreaChartExample()));  
////	    store.add(new GalleryChartModel("Pie", "pie.gif", new PieChartExample()));  
////	    store.add(new GalleryChartModel("Filled Bar", "filled.gif", new FilledBarChartExample()));  
////	    store.add(new GalleryChartModel("Bar - Glass", "barglass.gif", new BarGlassChartExample()));  
////	    store.add(new GalleryChartModel("Bar - 3D", "bar3d.gif", new Bar3DChartExample()));  
////	    store.add(new GalleryChartModel("Radar", "radar.gif", new RadarChartExample()));  
////	    store.add(new GalleryChartModel("Horizontal Bar", "horizontalbar.gif", new HorizontalChartExample()));      
////	    store.add(new GalleryChartModel("Cylinder", "cylinder.gif", new CylinderChartExample()));  
////	    store.add(new GalleryChartModel("Sketch Bar", "sketchbar.gif", new SketchChartExample()));  
////	  
////	    ListView<GalleryChartModel> view = new ListView<GalleryChartModel>() {  
////	      @Override  
////	      protected GalleryChartModel prepareData(GalleryChartModel model) {  
////	        String s = model.get("name");  
////	        model.set("shortName", Format.ellipse(s, 15));  
////	        return model;  
////	      }  
////	  
////	    };  
////	    view.setId("img-chooser-view");  
////	    view.setTemplate(getTemplate(!Examples.isExplorer() ? "../../" : ""));  
////	    view.setStore(store);  
////	    view.setItemSelector("div.thumb-wrap");  
////	    view.getSelectionModel().select(0, false);  
////	    view.getSelectionModel().addListener(Events.SelectionChange,  
////	        new Listener<SelectionChangedEvent<GalleryChartModel>>() {  
////	  
////	          public void handleEvent(SelectionChangedEvent<GalleryChartModel> be) {  
////	            example = be.getSelectedItem().getExample();  
////	            adjustUpdateSpeed(updateSpeed);  
////	          }  
////	  
////	        });  
////	    gallery.add(view, new FitData(0, 0, 20, 0));  
//	  
//	    VBoxLayoutData vFlex = new VBoxLayoutData();  
//	    vFlex.setFlex(1);  
//	    lc.add(gallery, vFlex);  
//	    return lc;  
//	  }
//	  private LayoutContainer getChart() {  
//		  ContentPanel fs = new ContentPanel();  
//		    fs.setHeading("Chart");  
//		    fs.setLayout(new FitLayout());  
//		  
////		    String url = !Examples.isExplorer() ? "../../" : "";  
////		    String url = "chart/open-flash-chart.swf";  
//		  
////		    final Chart chart = new Chart(url);  
////		    chart.setBorders(true);  
////		    fs.add(chart, new FitData(0, 0, 20, 0));
//		    fs.add(panel1(1));
////		    panel1(1);
//		    updateCmd = new Command() {  
//		      public void execute() {  
////		        chart.setChartModel(example.getChartModel(numSegments));
////		    	   for (int t = 0; t < numSegments; t++) {
////		    		   fs.add(panel1(1));
////		    		   bchart.addValues(Random.nextInt(5000) + 10000);  
////		    	   }  
//		      }  
//		    };  
//		  
//		    adjustUpdateSpeed(updateSpeed);  
//		    return fs;  
//		  }  
//		    
//		  @Override  
//		  protected void onAttach() {  
//		    updater.scheduleRepeating(updateSpeed);  
//		    super.onAttach();  
//		  }  
//		  
//		  @Override  
//		  protected void onDetach() {  
//		    updater.cancel();  
//		    super.onDetach();  
//		  }  
//		  
//		  private void adjustUpdateSpeed(int newSpeed) {  
//		    updateSpeed = newSpeed;  
//		    updateCmd.execute();  
//		  
//		    if (updater != null) updater.cancel();  
//		    if (updateSpeed == 0) {  
//		      return;  
//		    }  
//		    updater = new Timer() {  
//		      public void run() {  
//		        updateCmd.execute();  
//		      }  
//		    };  
//		    updater.scheduleRepeating(updateSpeed);  
//		  }
//		  private native String getTemplate(String base) /*-{   
//          return ['<tpl for=".">',   
//          '<div class="thumb-wrap" id="{name}" style="border: 1px solid white">',   
//          '<div class="thumb"><img src="' + base + 'samples/images/thumbs/charts/{path}" title="{name}"></div>',   
//          '<span class="x-editable">{shortName}</span></div>',   
//          '</tpl>',   
//          '<div class="x-clear"></div>'].join("");   
//             
//          }-*/;  
//
////class PieChartExample implements ChartModelExample {  
//// public ChartModel getChartModel(int segments) {  
////   ChartModel cd = new ChartModel("Sales per Month",  
////       "font-size: 14px; font-family: Verdana;");  
////   cd.setBackgroundColour("#fffff0");  
////   PieChart pie = new PieChart();  
////   pie.setAlpha(0.5f);  
////   pie.setTooltip("#label# $#val#<br>#percent#");  
////   pie.setAnimate(false);  
////   pie.setAlphaHighlight(true);  
////   pie.setGradientFill(true);  
////   pie.setColours("#ff0000", "#00aa00", "#0000ff", "#ff9900", "#ff00ff");  
////
////   for (int n = 0; n < segments; n++) {  
////     pie.addSlices(new PieChart.Slice(Random.nextInt(110) * 100,  
////         TestData.getMonths()[n]));  
////   }  
////   cd.addChartConfig(pie);  
////   return cd;  
//// }  
////}  
////
////class AreaChartExample implements ChartModelExample {  
//// public ChartModel getChartModel(int segments) {  
////   ChartModel cm = new ChartModel("Growth per Region",  
////       "font-size: 14px; font-family: Verdana;");  
////   cm.setBackgroundColour("#ffffff");  
////   XAxis xa = new XAxis();  
////   xa.setLabels("J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D");  
////   cm.setXAxis(xa);  
////   AreaChart area1 = new AreaChart();  
////   area1.setFillAlpha(0.3f);  
////   area1.setColour("#ff0000");  
////   area1.setFillColour("#ff0000");  
////   for (int n = 0; n < 12; n++) {  
////     if (n % 3 != 0)  
////       area1.addNullValue();  
////     else  
////       area1.addValues(n * Random.nextDouble());  
////   }  
////   cm.addChartConfig(area1);  
////   AreaChart area2 = new AreaChart();  
////   area2.setFillAlpha(0.3f);  
////   area2.setColour("#00aa00");  
////   area2.setFillColour("#00aa00");  
////   int floor = Random.nextInt(3);  
////   double grade = (Random.nextInt(4) + 1) / 10.0;  
////   for (int n = 0; n < 12; n++) {  
////     if (n % 2 != 0)  
////       area2.addNullValue();  
////     else  
////       area2.addValues(n * grade + floor);  
////   }  
////   cm.addChartConfig(area2);  
////   return cm;  
////
//// }  
////}  
////
////class FilledBarChartExample implements ChartModelExample {  
//// public ChartModel getChartModel(int segments) {  
////   ChartModel cm = new ChartModel("Sales by Month",  
////       "font-size: 16px; font-weight: bold; font-family: Verdana; color:#008800;");  
////   cm.setBackgroundColour("#eeffee");  
////   cm.setDecimalSeparatorComma(true);  
////   XAxis xa = new XAxis();  
////   xa.setLabels(TestData.getShortMonths(segments));  
////   xa.getLabels().setColour("#009900");  
////   xa.setGridColour("#eeffee");  
////   xa.setColour("#009900");  
////   cm.setXAxis(xa);  
////   YAxis ya = new YAxis();  
////   ya.setRange(5000, 20000);  
////   ya.setSteps(1000);  
////   ya.setGridColour("#eeffee");  
////   ya.setColour("#009900");  
////   cm.setYAxisLabelStyle(10, "#009900");  
////   cm.setYAxis(ya);  
////   FilledBarChart bchart = new FilledBarChart("#6666ff", "#000066");  
////   bchart.setTooltip("$#val#");  
////   for (int t = 0; t < segments; t++) {  
////     bchart.addValues(Random.nextInt(5000) + 10000);  
////   }  
////   cm.addChartConfig(bchart);  
////   return cm;  
//// }  
////}  
////
////class BarGlassChartExample implements ChartModelExample {  
//// public ChartModel getChartModel(int segments) {  
////   ChartModel cm = new ChartModel("Sales by Month 2007",  
////       "font-size: 14px; font-family: Verdana;");  
////   cm.setBackgroundColour("-1");  
////   XAxis xa = new XAxis();  
////   for (String m : TestData.getMonths()) {  
////     Label l = new Label(m, 45);  
////     l.setSize(10);  
////     l.setColour("#000000");  
////     xa.addLabels(l);  
////   }  
////   xa.setGridColour("-1");  
////   cm.setXAxis(xa);  
////   YAxis ya = new YAxis();  
////   ya.setSteps(16);  
////   ya.setMax(160);  
////   ya.setGridColour("#8888FF");  
////   cm.setYAxis(ya);  
////   BarChart bchart = new BarChart(BarStyle.GLASS);  
////   bchart.setColour("#FF00CC");  
////   bchart.setTooltip("$#val#");  
////   for (int t = 0; t < 12; t++) {  
////     if (t == segments - 1) {  
////       bchart.addBars(new BarChart.Bar(Random.nextInt(50) + 50, "#8888FF"));  
////     } else {  
////       bchart.addValues(Random.nextInt(50) + 50);  
////     }  
////   }  
////   cm.addChartConfig(bchart);  
////   return cm;  
//// }  
////}  
////
////class Bar3DChartExample implements ChartModelExample {  
//// public ChartModel getChartModel(int segments) {  
////   ChartModel cm = new ChartModel("Sales by Month 2008",  
////       "font-size: 14px; font-family: Verdana; color:#ffff00;");  
////   cm.setBackgroundColour("#000077");  
////   XAxis xa = new XAxis();  
////   xa.setLabels(TestData.getShortMonths(segments));  
////   xa.getLabels().setColour("#ffff00");  
////   xa.setGridColour("-1");  
////   xa.setColour("#aa5500");  
////   xa.setZDepth3D(5);  
////   cm.setXAxis(xa);  
////   YAxis ya = new YAxis();  
////   ya.setSteps(16);  
////   ya.setMax(160);  
////   ya.setGridColour("#000099");  
////   ya.setColour("#ffff00");  
////   cm.setYAxis(ya);  
////   cm.setYAxisLabelStyle(10, "#ffff00");  
////   BarChart bchart = new BarChart(BarStyle.THREED);  
////   bchart.setColour("#CC6600");  
////   bchart.setTooltip("$#val#");  
////   for (int t = 0; t < segments; t++) {  
////     bchart.addValues(Random.nextInt(50) + 50);  
////   }  
////   cm.addChartConfig(bchart);  
////   return cm;  
//// }  
////}  
////
////class RadarChartExample implements ChartModelExample {  
//// public ChartModel getChartModel(int segments) {  
////   ChartModel cm = new ChartModel("Popularity", "font-size: 12px; text-align: left;");  
////   cm.setBackgroundColour("#f0f0f0");  
////   RadarAxis ra = new RadarAxis();  
////   ra.setMax(segments + 1);  
////   ra.setStroke(2);  
////   ra.setColour("#A1D4B5");  
////   ra.setGridColour("#C0DEBF");  
////   ra.setSpokeLabels("Ext", "Web", "Java", "AJAX", "PHP");  
////   cm.setRadarAxis(ra);  
////   AreaChart area = new AreaChart();  
////   area.setFillAlpha(0.3f);  
////   area.setColour("#ff9900");  
////   area.setFillColour("#ff6600");  
////   area.setLoop(true);  
////   area.addValues(segments);  
////   area.addValues(Random.nextInt(segments + 1));  
////   area.addValues(Random.nextInt(segments + 1));  
////   area.addValues(Random.nextInt(segments + 1));  
////   area.addValues(Random.nextInt(segments + 1));  
////   cm.addChartConfig(area);  
////   return cm;  
//// }  
////}  
////
////class HorizontalChartExample implements ChartModelExample {  
//// public ChartModel getChartModel(int segments) {  
////   ChartModel cm = new ChartModel("Voted Best AJAX Framework", "font-size: 14px; font-family: Verdana; text-align: center;");  
////   XAxis xa = new XAxis();  
////   xa.setRange(0, 200, 50);  
////   cm.setXAxis(xa);  
////   YAxis ya = new YAxis();  
////   ya.addLabels("Ext", "Dojo", "jQuery", "YUI");  
////   ya.setOffset(true);  
////   cm.setYAxis(ya);  
////   HorizontalBarChart bchart = new HorizontalBarChart();  
////   bchart.setTooltip("#val# mph");  
////   bchart.addBars(new HorizontalBarChart.Bar(Random.nextInt(47) + 100, "#ffff00"));  
////   bchart.addBars(new HorizontalBarChart.Bar(Random.nextInt(44) + 100, "#0000ff"));  
////   bchart.addBars(new HorizontalBarChart.Bar(Random.nextInt(23) + 100, "#00ff00"));  
////   bchart.addBars(new HorizontalBarChart.Bar(Random.nextInt(50) + 150, "#ff0000"));  
////   cm.addChartConfig(bchart);       
////   cm.setTooltipStyle(new ToolTip(MouseStyle.FOLLOW));  
////   return cm;  
//// }  
////}  
////
////class CylinderChartExample implements ChartModelExample {  
//// public ChartModel getChartModel(int segments) {  
////   ChartModel cm = new ChartModel("Licenses by Quarter 2008", "font-size: 14px; font-family: Verdana; text-align: center;");  
////   cm.setBackgroundColour("#ffffff");  
////   XAxis xa = new XAxis();  
////   xa.setLabels("Q1", "Q2", "Q3", "Q4");  
////   xa.setZDepth3D(5);  
////   xa.setTickHeight(4);  
////   xa.setOffset(true);  
////   xa.setColour("#909090");  
////   cm.setXAxis(xa);  
////   YAxis ya = new YAxis();  
////   ya.setSteps(16);  
////   ya.setMax(160);  
////   cm.setYAxis(ya);  
////   CylinderBarChart bchart = new CylinderBarChart();  
////   bchart.setColour("#440088");  
////   bchart.setAlpha(.8f);  
////   bchart.setTooltip("$#val#");  
////   for (int t = 0; t < 4; t++) {  
////     if ((t+1) == (Math.ceil(segments/3.0))) {  
////       bchart.addBars(new BarChart.Bar(Random.nextInt(50) + 50, "#aa88ff"));  
////     } else {  
////       bchart.addValues(Random.nextInt(50) + 50);  
////     }  
////   }  
////   cm.addChartConfig(bchart);        
////   return cm;  
//// }  
////}  
////
////class SketchChartExample implements ChartModelExample {  
//// public ChartModel getChartModel(int segments) {  
////   ChartModel cm = new ChartModel("Smartest kid at school!", "font-size: 14px; font-family: Verdana;");  
////   cm.setBackgroundColour("#ffffff");  
////   XAxis xa = new XAxis();  
////   xa.setLabels("John", "Frank", "Mary", "Alec", "Mike", "James");  
////   cm.setXAxis(xa);  
////   SketchBarChart sketch = new SketchBarChart("#00aa00", "#009900", 6);  
////   sketch.setTooltip("#val# points");  
////   sketch.addValues(Random.nextInt(6) + 1, Random.nextInt(5) + 1, Random.nextInt(3) + 1);  
////   SketchBarChart.SketchBar skb = new SketchBarChart.SketchBar(Random.nextInt(5) + 5);  
////   skb.setColour("#6666ff");  
////   skb.setTooltip("Winner!<br>#val# points");  
////   sketch.addBars(skb);  
////   sketch.addValues(Random.nextInt(5) + 1, Random.nextInt(5) + 1);  
////   cm.addChartConfig(sketch);        
////   return cm;  
//// }  
 }  
}
